home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 20 / Cream of the Crop 20 (Terry Blount) (1996).iso / program / skeleton.zip / WindowsA.inc < prev    next >
Text File  |  1996-06-02  |  25KB  |  903 lines

  1. ;*******************************************************************************
  2. ;*    WindowsA.inc contains a very small ASCII (non-UNICODE) subset of the     *
  3. ;* Win32 API Constants, Type Definitions, Structures, and Function Prototypes  *
  4. ;*        converted from the MICROSOFT Win32 SDK C header file format to       *
  5. ;* the MICROSOFT MASM 6.11d include file format for assembly language programs *
  6. ;*******************************************************************************
  7.  
  8.  
  9. ;*******************************************************************************
  10. ;*            WINDEF.H    ****************************************
  11. ;*******************************************************************************
  12.  
  13. MAX_PATH    EQU    0104h
  14.  
  15. NULL        EQU    0h
  16. FALSE        EQU    0h
  17. TRUE        EQU    1h
  18.  
  19. CALLBACK    TYPEDEF    PROTO STDCALL
  20. WINAPI        TYPEDEF    PROTO STDCALL
  21.  
  22. BOOL        TYPEDEF    SDWORD
  23. LPBYTE        TYPEDEF    PTR BYTE
  24. LPDWORD        TYPEDEF    PTR DWORD
  25. LPVOID        TYPEDEF    PTR
  26. LPCVOID        TYPEDEF    PTR
  27.  
  28. UINT        TYPEDEF    DWORD
  29. LONG        TYPEDEF    DWORD
  30.  
  31. WPARAM        TYPEDEF    UINT
  32. LPARAM        TYPEDEF    DWORD
  33.  
  34. HANDLE        TYPEDEF    DWORD
  35. HWND        TYPEDEF    DWORD
  36. HGLOBAL        TYPEDEF    DWORD
  37. HGDIOBJ        TYPEDEF    DWORD
  38. HACCEL        TYPEDEF    DWORD
  39. HBITMAP        TYPEDEF    DWORD
  40. HBRUSH        TYPEDEF    DWORD
  41. HDC        TYPEDEF    DWORD
  42. HFONT        TYPEDEF    DWORD
  43. HICON        TYPEDEF    DWORD
  44. HMENU        TYPEDEF    DWORD
  45. HINSTANCE    TYPEDEF    DWORD
  46. HRGN        TYPEDEF    DWORD
  47. HRSRC        TYPEDEF    DWORD
  48. HCURSOR        TYPEDEF    DWORD
  49. COLORREF    TYPEDEF    DWORD
  50.  
  51. RECT        STRUCT
  52.     left    LONG    ?
  53.     top    LONG    ?
  54.     right    LONG    ?
  55.     bottom    LONG    ?
  56. RECT        ENDS
  57. LPRECT        TYPEDEF    PTR RECT
  58.  
  59. POINT        STRUCT
  60.     x    LONG    ?
  61.     y    LONG    ?
  62. POINT        ENDS
  63. LPPOINT        TYPEDEF    PTR POINT
  64.  
  65.  
  66. ;*******************************************************************************
  67. ;*            WINNT.H        ****************************************
  68. ;*******************************************************************************
  69.  
  70. LPSTR        TYPEDEF    DWORD
  71. LPCSTR        TYPEDEF    DWORD
  72.  
  73. FILE_ATTRIBUTE_READONLY    EQU    0001h
  74. FILE_ATTRIBUTE_HIDDEN    EQU    0002h
  75. FILE_ATTRIBUTE_SYSTEM    EQU    0004h
  76. FILE_ATTRIBUTE_DIRECTORY EQU    0010h
  77. FILE_ATTRIBUTE_ARCHIVE    EQU    0020h
  78. FILE_ATTRIBUTE_NORMAL    EQU    0080h
  79. FILE_ATTRIBUTE_TEMPORARY EQU    0100h
  80. FILE_ATTRIBUTE_COMPRESSED EQU    0800h
  81.  
  82. GENERIC_READ        EQU    080000000h
  83. GENERIC_WRITE        EQU    040000000h
  84. GENERIC_EXECUTE        EQU    020000000h
  85. GENERIC_ALL        EQU    010000000h
  86.  
  87. DLL_PROCESS_ATTACH    EQU    01h
  88. DLL_THREAD_ATTACH    EQU    02h
  89. DLL_THREAD_DETACH    EQU    03h
  90. DLL_PROCESS_DETACH    EQU    00h
  91.  
  92. RtlMoveMemory        PROTO    STDCALL :DWORD, :DWORD, :DWORD
  93. MoveMemory        TEXTEQU    <RtlMoveMemory>
  94. RtlFillMemory        PROTO    STDCALL :DWORD, :DWORD, :BYTE
  95. FillMemory        TEXTEQU    <RtlFillMemory>
  96.  
  97. ;*******************************************************************************
  98. ;*            WINERROR.H    ****************************************
  99. ;*******************************************************************************
  100.  
  101. ERROR_SUCCESS        EQU    000h
  102. ERROR_INVALID_HANDLE    EQU    006h
  103. ERROR_ALREADY_EXISTS    EQU    0B7h
  104.  
  105.  
  106. ;*******************************************************************************
  107. ;*    KERNEL32.LIB    WINBASE.H    ****************************************
  108. ;*******************************************************************************
  109.  
  110. INVALID_HANDLE_VALUE    EQU    -1
  111.  
  112. CREATE_NEW        EQU    01h
  113. CREATE_ALWAYS        EQU    02h
  114. OPEN_EXISTING        EQU    03h
  115. OPEN_ALWAYS        EQU    04h
  116. TRUNCATE_EXISTING    EQU    05h
  117.  
  118. OVERLAPPED        STRUCT
  119.     Internal    DWORD    ?
  120.     InternalHigh    DWORD    ?
  121.     _Offset        DWORD    ?
  122.     OffsetHigh    DWORD    ?
  123.     hEvent        HANDLE    ?
  124. OVERLAPPED        ENDS
  125. LPOVERLAPPED        TYPEDEF    PTR OVERLAPPED
  126.  
  127. SECURITY_ATTRIBUTES    STRUCT
  128.     nLength        DWORD    ?
  129.     lpSecurityDescriptor    LPVOID    ?
  130.     bInheritHandle    BOOL    ?
  131. SECURITY_ATTRIBUTES    ENDS
  132. LPSECURITY_ATTRIBUTES    TYPEDEF    PTR SECURITY_ATTRIBUTES
  133.  
  134. PROCESS_INFORMATION    STRUCT
  135.     hProcess    HANDLE    ?
  136.     hThread        HANDLE    ?
  137.     dwProcessID    DWORD    ?
  138.     dwThreadID    DWORD    ?
  139. PROCESS_INFORMATION    ENDS
  140. LPPROCESS_INFORMATION    TYPEDEF    PTR PROCESS_INFORMATION
  141.  
  142. GMEM_FIXED        EQU    00000h
  143. GMEM_MOVEABLE        EQU    00002h
  144. GMEM_ZEROINIT        EQU    00040h
  145. GMEM_SHARE        EQU    02000h
  146.  
  147. DEBUG_PROCESS        EQU    001h
  148. DEBUG_ONLY_THIS_PROCESS    EQU    002h
  149. CREATE_SUSPENDED    EQU    004h
  150. DETACHED_PROCESS    EQU    008h
  151. CREATE_NEWE_CONSOLE    EQU    010h
  152. NORMAL_PRIORITY_CLASS    EQU    020h
  153.  
  154. WinMain            PROTO    WINAPI    :HINSTANCE, :HINSTANCE, :LPSTR, :SDWORD
  155. GlobalAlloc        PROTO    WINAPI    :UINT, :DWORD
  156. GlobalLock        PROTO    WINAPI    :HGLOBAL
  157. GlobalUnlock        PROTO    WINAPI    :HGLOBAL
  158. GlobalFree        PROTO    WINAPI    :HGLOBAL
  159. ExitProcess        PROTO    WINAPI    :DWORD
  160. GetLastError        PROTO    WINAPI
  161. DebugBreak        PROTO    WINAPI
  162. Sleep            PROTO    WINAPI    :DWORD
  163. LoadResource        PROTO    WINAPI    :HINSTANCE, :HRSRC
  164. GetFileSize        PROTO    WINAPI    :HANDLE, :LPDWORD
  165. WriteFile        PROTO    WINAPI    :HANDLE, :LPCVOID, :DWORD, :LPDWORD, :LPOVERLAPPED
  166. ReadFile        PROTO    WINAPI    :HANDLE, :LPVOID, :DWORD, :LPDWORD, :LPOVERLAPPED
  167. CloseHandle        PROTO    WINAPI    :HANDLE
  168. Beep            PROTO    WINAPI    :DWORD, :DWORD
  169. lstrlenA        PROTO    WINAPI    :LPCSTR
  170. lstrlen            TEXTEQU    <lstrlenA>
  171.  
  172. STARTF_USESHOWWINDOW    EQU    0001h
  173. STARTF_USESIZE        EQU    0002h
  174. STARTF_USEPOSITION    EQU    0004h
  175. STARTF_USECOUNTCHARS    EQU    0008h
  176. STARTF_USEFILLATTRIBUTE    EQU    0010h
  177. STARTF_RUNFULLSCREEN    EQU    0020h
  178. STARTF_FORCEONFEEDBACK    EQU    0040h
  179. STARTF_FORCEOFFFEEDBACK    EQU    0080h
  180. STARTF_USESTDHANDLES    EQU    0100h
  181. STARTF_USEHOTKEY    EQU    0200h
  182.  
  183. STARTUPINFOA        STRUCT
  184.     cb        DWORD        ?
  185.     lpReserved    LPSTR        ?
  186.     lpDesktop    LPSTR        ?
  187.     lpTitle        LPSTR        ?
  188.     dwX        DWORD        ?
  189.     dwY        DWORD        ?
  190.     dwXSize        DWORD        ?
  191.     dwYSize        DWORD        ?
  192.     dwXCountChars    DWORD        ?
  193.     dwYCountChars    DWORD        ?
  194.     dwFillAttribute    DWORD        ?
  195.     dwFlags        DWORD        ?
  196.     wShowWindow    WORD        ?
  197.     cbReserved2    WORD        ?
  198.     lpReserved2    LPBYTE        ?
  199.     hStdInput    HANDLE        ?
  200.     hStdOutput    HANDLE        ?
  201.     hStdError    HANDLE        ?
  202. STARTUPINFOA        ENDS
  203. LPSTARTUPINFO        TYPEDEF    PTR STARTUPINFOA
  204. STARTUPINFO        TEXTEQU    <STARTUPINFOA>
  205.  
  206. CreateSemaphoreA    PROTO    WINAPI    :LPSECURITY_ATTRIBUTES, :LONG, :LONG, :LPCSTR
  207. CreateSemaphore        TEXTEQU    <CreateSemaphoreA>
  208.  
  209. GetModuleHandleA    PROTO    WINAPI    :DWORD
  210. GetModuleHandle        TEXTEQU    <GetModuleHandleA>
  211. CreateProcessA        PROTO    STDCALL    :LPCSTR, :LPSTR,\
  212.                     :LPSECURITY_ATTRIBUTES,\
  213.                     :LPSECURITY_ATTRIBUTES,\
  214.                     :BOOL, :DWORD, :LPVOID, :LPCSTR,\
  215.                     :LPSTARTUPINFO,\
  216.                     :LPPROCESS_INFORMATION
  217. CreateProcess        TEXTEQU    <CreateProcessA>
  218. GetStartupInfoA        PROTO    WINAPI    :LPSTARTUPINFO
  219. GetStartupInfo        TEXTEQU    <GetStartupInfoA>
  220. GetCommandLineA        PROTO    WINAPI
  221. GetCommandLine        TEXTEQU    <GetCommandLineA>
  222. OutputDebugStringA    PROTO    WINAPI    :LPCSTR
  223. OutputDebugString    TEXTEQU    <OutputDebugStringA>
  224. FindResourceA        PROTO    WINAPI    :HINSTANCE, :LPCSTR, :LPCSTR
  225. FindResource        TEXTEQU    <FindResourceA>
  226. CreateFileA        PROTO    WINAPI    :LPCSTR, :DWORD, :DWORD,\
  227.                     :LPSECURITY_ATTRIBUTES,\
  228.                     :DWORD, :DWORD, :HANDLE
  229. CreateFile        TEXTEQU    <CreateFileA>
  230. QueryPerformanceCounter    PROTO    WINAPI    :DWORD
  231. QueryPerformanceFrequency PROTO    WINAPI    :DWORD
  232.  
  233.  
  234. ;*******************************************************************************
  235. ;*    GDI32.LIB    WINGDI.H    ****************************************
  236. ;*******************************************************************************
  237.  
  238. SRCCOPY            EQU    00CC0020h    ;dest = source
  239. SRCPAINT        EQU    00EE0086h    ;dest = source OR dest
  240. SRCAND            EQU    008800C6h    ;dest = source AND dest
  241. SRCINVERT        EQU    00660046h    ;dest = source XOR dest
  242. SRCERASE        EQU    00440328h    ;dest = source AND (NOT dest)
  243.  
  244. TA_LEFT            EQU    000h
  245. TA_RIGHT        EQU    002h
  246. TA_CENTER        EQU    006h
  247. TA_TOP            EQU    000h
  248. TA_BOTTOM        EQU    008h
  249. TA_BASELINE        EQU    018h
  250.  
  251. SP_ERROR        EQU    -1
  252.  
  253. BITMAP            STRUCT
  254.     bmType        LONG        ?
  255.     bmWidth        LONG        ?
  256.     bmHeight    LONG        ?
  257.     bmWidthBytes    LONG        ?
  258.     bmPlanes    WORD        ?
  259.     bmBitsPixel    WORD        ?
  260.     bmBits        LPVOID        ?
  261. BITMAP            ENDS
  262.  
  263. DRAFT_QUALITY        EQU    002h
  264. PROOF_QUALITY        EQU    003h
  265. FIXED_PITCH        EQU    001h
  266. VARIABLE_PITCH        EQU    002h
  267. FW_NORMAL        EQU    400
  268. FW_BOLD            EQU    700
  269. FF_ROMAN        EQU    010h
  270. FF_MODERN        EQU    030h
  271.  
  272. TRANSPARENT        EQU    01h
  273. OPAQUE            EQU    02h
  274.  
  275. WHITE_BRUSH        EQU    00h
  276. LTGRAY_BRUSH        EQU    01h
  277. GRAY_BRUSH        EQU    02h
  278. DKGRAY_BRUSH        EQU    03h
  279. BLACK_BRUSH        EQU    04h
  280.  
  281. BitBlt            PROTO    WINAPI    :HDC, :DWORD, :DWORD, :DWORD, :DWORD,\
  282.                     :HDC, :DWORD, :DWORD, :DWORD
  283. CreateCompatibleDC    PROTO    WINAPI    :HDC
  284. CreateFontA        PROTO    WINAPI    :SDWORD, :SDWORD, :SDWORD, :SDWORD, :SDWORD, :DWORD, :DWORD,\
  285.                     :DWORD, :DWORD, :DWORD, :DWORD, :DWORD, :DWORD, :LPCSTR
  286. CreateFont        TEXTEQU    <CreateFontA>
  287. CreateSolidBrush    PROTO    WINAPI    :COLORREF